Expression:

Stack

Tree Assembly Area

From Postfix to Tree 🌳

We use a stack. Read the expression token by token and follow two rules:

  • Operand ('A'): create a node, push to stack.
  • Operator ('*'): pop two nodes, create a parent, push subtree back.
Click "Next Step" to begin.

def build_expression_tree(postfix_expr):
    stack = []
    operators = {'+', '-', '*', '/'}

    for token in postfix_expr:
        if token in operators:
            # Create node, pop right then left,
            # attach children, and push parent back.
        else:
            # Create a node and push to stack.
            
    return stack[0]